Method and apparatus for tuning a PID controller

ABSTRACT

In tuning a controller for a process in a feedback control system, a method is provided for bringing the system into asymmetric self-excited oscillations for measuring the frequency of the oscillations, average over the period value of the process output signal and average over the period control signal and tuning the controller in dependence of the measurements obtained. An element having a non-linear characteristic is introduced into the system in series with the process and set point signal is applied to excite asymmetric self-excited oscillations in the system. An algorithm and formulas are given for identification of the process model having the form of first order plus dead time transfer function. PI controller settings are given as a function of the dead time/time constant ratio. An apparatus for performing the method is disclosed.

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS CROSS-REFERENCE TO RELATED APPLICATIONS U.S. Patent Documents: 4214300 July 1980 Barlow et al. 364/105. 4549123 October 1985 Hagglund et al. 364/157. 4602326 July 1986 Kraus 364/158. 4754391 June 1988 Suzuki 364/157. 4836319 June 1989 Haseda et al. 180/142. Re33267 July 1990 Kraus 364/158. 5124626 June 1992 Thoen 364/161. 5222022 June 1993 Adams et al. 364/431. 5223778 June 1993 Svarovsky et al. 364/157. 5229699 July 1993 Chu et al. 364/162. 5283729 February 1994 Lloyd 364/157. 5311421 May 1994 Nomura et al. 364/157. 5325288 June 1994 Satou 364/162. 5396415 March 1995 Konar et al. 364/162. 5412557 May 1995 Lauw 363/37. 5453925 September 1995 Wojsznis et al. 364/157. 5535117 July 1996 Hiroi 364/158. 5568377 October 1996 Seem et al. 364/157. 5587899 December 1996 Ho et al. 364/157. 5587896 December 1996 Hansen et al. 700/28 5742503 April 1998 Yu 700/42 5649062 July 1997 Teng et al. 706/23

OTHER REFERENCES

[0002] Cheng et al., 1999, Identification and Control of Nonlinear Systems Using Multiple Models: Relay Feedback Approach. Proc. American Control Conference 1999, 3327-3331.

[0003] Chiang et al., 1992, Derivation of Transfer Function from Relay Feedback Systems. Ind. Eng. Chem. Res. 31, 855-860.

[0004] Chiang et al., 1993, Monitoring procedure for Intelligent Control: On-Line Identification of Maximum Closed-Loop Log Modules. Ind. Eng. Chem. Res. 32.

[0005] De Arruda et al., 2000, Relay Base Closed Loop Transfer Function Estimation. Proc American Control Conference 2000, 1812-1816.

[0006] Haegglund et al., 1991, Industrial Adaptive Controllers Based on Frequency Response Techniques. Automatica 27, 599-609.

[0007] Kaya et al., 1999, A PI-PD Controller Design for Integrating Processes. Proc American Control Conference 1999, 258-262.

[0008] Li et al., 1991, An Improved Autotune Identification Method. Ind. Eng. Chem. Res. 30, 1530-1541.

[0009] Lin et al., 1993, Automatic Tuning and Gain Scheduling for PH Control. Chem. Eng. Sci. 48, 3159-3171.

[0010] Loh et al., 1994, Describing Function Matrix for Multivariable Systems and Its Use in Multiloop PI Design. J. Proc. Control 4, 115-120.

[0011] Luyben et al., 1987, Derivation of Transfer Functions For Highly Nonlinear Distillation Columns. Ind. Eng. Chem. Res. 26, 2490-2495.

[0012] Luyben et al., 1994, Non-linear Autotune Identification. Int. J. Control 59, 595-626.

[0013] Papastathopoulou et al., 1990, Tuning Controllers on Distillation Columns with Distillate-Bottoms Structure. Ind. Eng. Chem. Res. 29, 1859-1868.

[0014] Shen et al., 1992, Indirect Feedforward Control: Multivariable Systems. Chem. Eng. Sci. 47, 3085-3097.

[0015] Shen et al., 1994, Use of Relay-Feedback Test for Automatic Tuning of Multivariable Systems. AIChE J. 40, 627-646.

[0016] Wang et al, 2000, PI Tuning for Process with Large Dead Time. Proc. American Control Conference 2000, 4274-4278.

[0017] Wood et al., 1973., Terminal Composition Control of A Binary Distillation Column. Chem. Eng. Sci. 28, 707-720.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

[0018] Not Applicable

REFERENCE TO SEQUENCE LISTING, A TABLE, OR A COMPUTER PROGRAM LISTING COMPACT DISK APPENDIX

[0019] Not Applicable

BACKGROUND OF THE INVENTION

[0020] Autotuning of PID controllers based on relay feedback tests proposed by Astrom and Hagglund in 1981 (respective U.S. Pat. No. 4,549,123 issued in 1985) received a lot of attention after that (W. L. Luyben, “Derivation of Transfer Functions for Highly Nonlinear Distillation Columns”, Ind. Eng. Chem. Res. 26, 1987, pp.2490-2495; Tore Hagglund, Karl J. Astrom, “Industrial Adaptive Controllers Based on Frequency Response Techniques”, Automatica 27, 1991, pp.599-609). It identifies the important dynamic information, ultimate gain and ultimate frequency, in a straightforward manner. The success of this type of autotuners lies on the fact that they are simple and reliable. This features of the relay feedback autotuning have lead to a number of commercial autotuners (Tore Hagglund, Karl J. Astrom, “Industrial Adaptive Controllers Based on Frequency Response Techniques”, Automatica 27, 1991, pp.599-609) and industrial applications (H. S. Papastathopoulou, W. L. Luyben, “Tuning Controllers on Distillation Columns with the Distillate-Bottoms Structure”, Ind. Eng. Chem. Res. 29, 1990, pp.1859-1868).

[0021] Luyben (W. L. Luyben, “Derivation of Transfer Functions for Highly Nonlinear Distillation Columns”, Ind. Eng. Chem. Res. 26, 1987, pp.2490-2495) proposed the use of relay feedback tests for system identification. The ultimate gain and ultimate frequency from the relay feedback test are used to fit a typical transfer function (e.g., first-, second- or third order plus time delay system). This identification was successfully applied to highly nonlinear process, e.g., high purity distillation column. Despite the apparent success of autotune identification, it can lead to signification errors in the ultimate gain and ultimate frequency approximation (e.g., 5-20% error in R. C. Chiang, S. H. Shen, C. C. Yu, “Derivation of Transfer Function from Relay Feedback Systems”, Ind. Eng Chem. Res. 31, 1992, pp.855-860) for typical transfer functions in process control system. The errors come from the linear approximation (describing function method) to a nonlinear element. The square type of output from the relay is approximated with the principal harmonic from the Fourier series (Derek P. Atherton, “Nonlinear Control Engineering”, Van Nostrand Reinhod: New York, 1982) and the ultimate gain is estimated accordingly. Several attempts were proposed to overcome this inaccuracy but didn't overcome the main source of inaccuracy—linear approximation of the relay element due to the use of describing function method model.

BRIEF SUMMARY OF THE INVENTION

[0022] The present invention completely eliminates this source of inaccuracy—on account of application of a precise model of the oscillatory process—via the use of the locus of a perturbed relay system (LPRS) method (Igor Boiko, “Input-output analysis of limit cycling relay feedback control systems,” Proc. of 1999 American Control Conference, San Diego, USA, Omnipress, 1999, pp.542-546; Igor Boiko, “Application of the locus of a perturbed relay system to sliding mode relay control design,” Proc. of 2000 IEEE International Conference on Control Applications, Anchorage, Ark., USA, 2000, pp. 542-547; Igor Boiko, “Frequency Domain Approach to Analysis of Chattering and Disturbance Rejection in Sliding Mode Control,” Proc. of World Multiconference on Systemics, Cybernetics and Informatics, Orlando, Fla., USA, Vol. XV, Part II, pp. 299-303) instead of describing function method. The present invention defines a method and an apparatus for bringing the system (comprising the process, nonlinear element and external source of constant set point signal) into asymmetric oscillations mode (further referred to as asymmetric relay feedback test) for determining (measuring) quantities essential for the tuning of the controller. The method is based on the measurement of the points of the LPRS from the asymmetric relay feedback test on the one hand and fitting of the LPRS obtained analytically to the measured LPRS via optimization of the process model parameters. For the process represented by the first order plus time delay transfer function, simple analytical formulas are derived. The invention includes all variations and combinations (P, PI, PD, PID, etc.) of the control types of PID controller but not limited to those types of controllers.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

[0023]FIG. 1. The system that comprises the nonlinear element, the process, and the source of the set point signal.

[0024]FIGS. 2A and 2B. Input-output relationship for symmetric hysteresis relay and asymmetric hysteresis relay.

[0025]FIG. 3. Block diagram of a relay feedback system.

[0026]FIG. 4. LPRS and determination of the frequency of oscillations.

[0027]FIG. 5. Block diagram of the controller and of the process.

[0028]FIG. 6. Block diagram of the SIMULINK® model of the autotuning system.

DETAILED DESCRIPTION OF THE INVENTION

[0029] Referring to the drawings, a description will be given of an embodiment of a controller autotuning method according to the present invention.

[0030] The PID-control stands for proportional, integrating and derivative control. It is very common for controlling industrial processes. PID-controllers are manufactured by various manufacturers in large quantities. Usually the controllers are based on microprocessors and proportional, integrating and derivative functions are normally implemented within a software. Nevertheless, the principal structure of a conventional PID-controller is retained and without loss of generality it is possible to consider a PID-controller as a parallel connection of three channels: proportional with gain K_(p), integrating with gain K_(i) and derivative with gain K_(d). As a result, transfer function of the PID-controller is:

W _(pid)(s)=K _(p) +K _(i) /s+K _(d) s

[0031] Choice of gains K_(p), K_(i) and K_(d) values is a subject of tuning if the controller is implemented as a PID-controller. There are established methods of tuning a PID-controller in dependence on the parameters of the process, for example Ziegler-Nichols's method of manual tuning, Hagglund-Astrom's relay feedback autotuning method. There are also a number of other methods of manual and automatic tuning. All those methods can be divided into parametric and non-parametric.

[0032] Parametric methods are based on a certain dynamic model of the process with unknown parameters. The process undergoes a test or a number of tests aimed at the process model parameters identification. Once the process model parameters are identified, the controller is tuned in accordance with known from the automatic control theory rules—to provide stability and required performance to the closed-loop system (comprising the process, the controller, the comparison device, and the feedback). Non-parametric methods are based on the tests on the process, which are aimed at the measurement of some general characteristics of the process, for example ultimate gain and ultimate frequency at both Ziegler-Nichols's method of manual tuning and Hagglund-Astrom's relay feedback autotuning method.

[0033] Generally, parametric methods can provide a better tuning quality (due to possibility of the use of more precise model of the process) but require more complex tests on the process. Therefore, there is a need for comparatively simple yet precise method of tuning (manual and automatic), which can be embedded into software of local controllers or distributed control system (DCS) or be implemented as a software for a personal computer used by an engineer who is supposed to tune the controllers.

[0034] Usually, methods of tuning that utilize Hagglund-Astrom's relay feedback test for estimating the parameters of oscillations are based on describing function method (Derek P. Atherton, “Nonlinear Control Engineering”, Van Nostrand Reinhod: New York, 1982). The use of this method is limited to harmonic oscillations in the system, which is normally not the case.

[0035] The present invention is based on the model of oscillations provided by the LPRS method (Igor Boiko, “Input-output analysis of limit cycling relay feedback control systems,” Proc. of 1999 American Control Conference, San Diego, USA, Omnipress, 1999, pp.542-546; Igor Boiko, “Application of the locus of a perturbed relay system to sliding mode relay control design,” Proc. of 2000 IEEE International Conference on Control Applications, Anchorage, Ark., USA, 2000, pp. 542-547; Igor Boiko, “Frequency Domain Approach to Analysis of Chattering and Disturbance Rejection in Sliding Mode Control,” Proc. of World Multiconference on Systemics, Cybernetics and Informatics, Orlando, Fla., USA, Vol. XV, Part II, pp. 299-303), which doesn't use the above limiting hypothesis. The present invention provides a relatively simple parametric method of controller tuning. The method uses a modified Hagglund-Astrom's relay feedback test as means to identify parameters of a process model. A process can be modeled by a transfer function with a dead time (time delay) or without it or have a matrix state space description.

[0036] According to the present invention, a method is provided where the process has a transfer function W_(p)(s) or a matrix state space description and the system (FIG. 1)—via introduction a nonlinear element 2 in series with the process 1 and applying a set point signal 3 to the closed-loop system—is brought in asymmetric self-excited oscillations mode for measuring the frequency of the oscillations, average over the period value of the process output signal and average over the period control signal whereupon the controller is tuned in dependence on the measurements obtained. An element having a non-linear (relay) characteristic (FIG. 2A or 2B) is introduced into the system in series with the process and set point signal is applied to excite asymmetric self-excited oscillations in the system. If the nonlinear element has an asymmetric relay characteristic the system should be transformed into an equivalent relay system with a symmetric relay characteristic—with the use of known from the automatic control theory techniques. It is proved (Igor Boiko, “Input-output analysis of limit cycling relay feedback control systems,” Proc. of 1999 American Control Conference, San Diego, USA, Omnipress, 1999, pp.542-546; Igor Boiko, “Frequency Domain Approach to Analysis of Chattering and Disturbance Rejection in Sliding Mode Control,” Proc. of World Multiconference on Systemics, Cybernetics and Informatics, Orlando, Fla., USA, Vol. XV, Part II, pp. 299-303) that asymmetric self-excited oscillations in the relay feedback system (FIG. 3) comprising the process transfer function 1, the relay 2, the set point signal 3, the feedback 4,l and the comparison device 5 can be described by the LPRS. The LPRS is a characteristic of a relay feedback system that has the following definition: $\begin{matrix} {{J(\omega)} = \left. {{{- 0.5}{\lim\limits_{f_{0}\rightarrow 0}\frac{\sigma_{0}}{u_{0}}}} + {j\frac{\pi}{4\quad c}{\lim\limits_{f_{0}\rightarrow 0}{y(t)}}}} \right|_{t = 0}} & (1) \end{matrix}$

[0037] where ƒ₀ is the set point, σ₀ and u₀ are constant terms of error signal σ(t) and control u(t) respectively, c is the amplitude of the relay, ω is the frequency of the oscillations, which can be varied by means of varying the hysteresis b of the relay.

[0038] The LPRS is related with a transfer function of the linear part of a relay feedback system, and for a given transfer function W(s) of the linear part of a relay feedback system the LPRS J(ω) can be calculated via the use of one of the following formulas and techniques (Igor Boiko, “Input-output analysis of limit cycling relay feedback control systems,” Proc. of 1999 American Control Conference, San Diego, USA, Omnipress, 1999, pp.542-546; Igor Boiko, “Application of the locus of a perturbed relay system to sliding mode relay control design,” Proc. of 2000 IEEE International Conference on Control Applications, Anchorage, Ark., USA, 2000, pp. 542-547; Igor Boiko, “Frequency Domain Approach to Analysis of Chattering and Disturbance Rejection in Sliding Mode Control,” Proc. of World Multiconference on Systemics, Cybernetics and Informatics, Orlando, Fla., USA, Vol. XV, Part II, pp. 299-303):

[0039] a) The LPRS can be calculated as a series of transfer function values at multiple frequencies—according to the formula: $\begin{matrix} {{J(\omega)} = {{\sum\limits_{k = 1}^{\infty}\quad {{k^{m}\left( {- 1} \right)}^{k + 1}{{{Re}W}\left( {k\quad \omega} \right)}}} + {j{\sum\limits_{k = 1}^{\infty}{\frac{1}{{2k} - 1}{{{Im}W}\left\lbrack {\left( {{2k} - 1} \right)\omega} \right\rbrack}}}}}} & (2) \end{matrix}$

[0040] where W(s) is the transfer function of the linear part of the system (of the process in this case), m=0 for type zero (non-integrating process) and m=1 for non-zero type servo system (integrating process). For realization of this technique, summation should be done from k=1 to k=M₁ and M₂ where M₁ and M₂ are sufficiently large numbers for the finite series being a good approximation of the infinite one.

[0041] b) The LPRS can be calculated with the use of the following technique. Firstly, transfer function is represented as a sum of m transfer functions of 1^(st) and 2^(nd) order elements (expanded into partial fractions): W(s) = W₁(s) + W₂(s) + W₃(s) + … + W_(m)(s)

[0042] Secondly, for each transfer function, respective LPRSs (the partial LPRSs) are calculated with the use of formulas of Table 1. TABLE 1 Formulas of LPRS J(ω) Transfer function W(s) LPRS J(ω) K/s 0 − jπ²K/(8ω) K/(Ts + 1) 0.5K(1 − α cosech α) − j0.25 πK th(α/2), α = π/(Tω) K/[( T₁s + 1)( T₂s + 1)] 0.5K[1 − T₁/(T₁ − T₂) α₁ cosech α₁ − T₂/(T₂ − T₁) α₂ cosech α₂)] − j0.25 πK/(T₁ − T₂) [T₁ th(α₁/2) − T₂ th(α₂/2)], α₁ = π/(T₁ω), α₂ = π/(T₂ω) K/(s² + 2 ξs + 1) 0.5 K[(1 − (B + γC)/(sin²β + sh²α)] − j0.25 πK(shα − γsinβ)/(chα + cosβ) α = πξ/ω, β = π(1 − ξ²)^(1/2)/ω, γ = α/β, β = αcosβshα + βsinβchaα C = αsinβchα − βcosβshα K s/(s² + 2ξs + 1) 0.5 K [ξ (β + γC) − π/ω cosβshα]/(sin² β + sh²α)] − j0.25 K π(1 − ξ²)^(−1/2) sinβ/(chα + cosβ) α = πξ/ω, β = π(1 − ξ²)^(1/2)/ω, γ = α/β, β = αcosβshα + βsinβchα, C = αsinβchα − βcosβshα, K s/(s + 1)² 0.5 K[α( − shα + α ch α)/sh²α − j0.25 πα/(1 + chα)], α = π/ω K s/[(T₁s + 1) (T₂s + 1)] 0.5 K/(T₂ − T₁) [ α₂ cosech α₂ − α₁ cosech α₁] − j0.25 K π/(T₂ − T₁) [th(α₁/2) − th(α₂/2)] , α₁ = π/(T₁ω), α₂ = π/(T₂ω)

[0043] Thirdly, the LPRS is calculated as a sum of all partial LPRSs: J(ω) = J₁(ω) + J₂(ω) + J₃(ω) + … + J_(m)(ω)

[0044] c) For matrix state space description, the LPRS for type 0 servo systems is calculated with the use of formula (3): $\begin{matrix} {{J(\omega)} = {{{- 0.5}{C\left\lbrack {A^{- 1} + {\frac{2\quad \pi}{\omega}\left( {I - ^{\frac{2\quad \pi}{\omega}A}} \right)^{- 1}^{\frac{\quad \pi}{\omega}A}}} \right\rbrack}B} + {j\frac{\pi}{4\quad}{C\left( {I + ^{\frac{\quad \pi}{\omega}A}} \right)}^{- 1}\left( {I - ^{\frac{\quad \pi}{\omega}A}} \right)A^{- 1}B}}} & (3) \end{matrix}$

[0045] where A, B and C are matrices of the following state space description of a relay system:

{dot over (x)}=Ax+Bu

y=Cx $u = \left\{ \begin{matrix} {{{{+ 1}\quad {if}\quad \sigma} = {{f_{0} - y} > b}},{> 0}} \\ {{{{- 1}\quad {if}\quad \sigma} = {{f_{0} - y} < {- b}}},{< 0}} \end{matrix} \right.$

[0046] where A is an n×n matrix, B is an n×1 matrix, C is an 1×n matrix, ƒ₀ is the set point, σ is the error signal, 2 b is the hysteresis of the relay function, x is the state vector, y is the process output, u is the control, n is the order of the system;

[0047] or the LPRS for type 1 (integrating process) servo systems is calculated with the use of formula (4): $\begin{matrix} {{{J(\omega)} = {0.25{CA}^{- 2}\left\{ {{\left( {I - D} \right)^{- I}\left\lbrack {{{D^{2}--}\left( {I + {\frac{4\quad \pi}{\omega}A}} \right)D} + D^{3} - I} \right\rbrack} + D - I} \right\} {B++}j\frac{\pi}{8}{CA}^{- 1}\left\{ {\frac{\pi}{\omega} + {A^{- I}\left\lbrack {{\left( {I - D^{2}} \right)^{- 1} \cdot \cdot \left( {{3D^{2}} - {3D} - D^{3} + I} \right)} - D + I} \right\rbrack}} \right\} B}},} & (4) \end{matrix}$

[0048] where ${D = ^{\frac{\quad \pi}{\omega}A}},$

[0049] A, B and C are matrices of the following state space description of a relay system:

{dot over (x)}=Ax+Bu

{dot over (y)}=Cx−ƒ ₀ $u = \left\{ \begin{matrix} {{{{+ 1}\quad {if}\quad \sigma} = {{- y} > b}},{> 0}} \\ {{{{- 1}\quad {if}\quad \sigma} = {{- y} < {- b}}},{< 0}} \end{matrix} \right.$

[0050] where A is an (n−1)×(n−1) matrix, B is an (n−1)×1 matrix, C is an 1×(n−1) matrix, n is the order of the system.

[0051] Any of the three techniques presented above can be used for the LPRS calculation. If the LPRS is calculated (FIG. 4) the frequency of oscillations Ω and the equivalent gain of the relay k_(n) can be easily determined. In a relay feedback system, the following equalities are true (directly follow from the LPRS definition above; detailed consideration is given in the paper: T. Boiko, “Input-output analysis of limit cycling relay feedback control systems,” Proc. of 1999 American Control Conference, San Diego, USA, Omnipress, 1999, pp.542-546): $\begin{matrix} {{{{Im}\quad {J(\Omega)}} = {- \frac{\pi \quad b}{4\quad c}}},} & (5) \\ {k_{n} = {- \frac{1}{2{Re}\quad {J(\Omega)}}}} & (6) \end{matrix}$

[0052] The frequency of oscillations Ω corresponds to the point of intersection of the LPRS 1 and the line 2 parallel to the real axis that lies below it at the distance of πb/(4 c). Therefore, by measuring frequency of oscillations Ω, average over the period process output y₀ and average over the period control signal u₀ we can calculate average over the period value of the error signal: σ₀=ƒ₀−y₀, the equivalent gain of the relay k_(n)=u₀/σ₀ (although this is not an exact value the experiments prove that it is a very good approximation even if u₀ and σ₀ are not small; the smaller u₀ and σ₀ the more precise value of k_(n) we obtain), the static gain of the process K=y₀/u₀, and identify one point of the LPRS—at frequency Ω: $\begin{matrix} {{J(\Omega)} = {{{- 0.5}{\left( {f_{0} - y_{0}} \right)/u_{0}}} - {j\quad \pi \quad {b/\left( {4\quad c} \right)}}}} & (7) \end{matrix}$

[0053] If the model of the process contains only 2 unknown parameters (beside static gain K), those two parameters can be found from complex equation (7), which corresponds to finding a point of the LPRS at frequency ω=Ω.

[0054] If the process model contains more than three unknown parameters, two or more asymmetric relay feedback tests—each with different hysteresis b of the relay element—should be carried out. As a result, each experiment provides one point of the LPRS, and N experiments provide N points of the LPRS on the complex plane enabling up to 2N unknown parameters (beside static gain K) to be determined.

[0055] One particular process model is worth an individual consideration. The first reason is that it is a good approximation of many processes. The second reason is—this process model allows for a simple semi-analytical solution. The process transfer function W_(p)(s) is sought to be of 1^(st) order with a dead time:

W _(p)(s)=K exp(−τs)/(Ts+1)  (8)

[0056] The LPRS for this transfer function is given by: $\begin{matrix} {{J(\omega)} = {{\frac{K}{2}\left( {1 - {\alpha \quad ^{\gamma}{cosech}\quad \alpha}} \right)} + {j\frac{\pi}{4}{K\left( {\frac{2^{- \alpha}^{\gamma}}{1 + ^{- \alpha}} - 1} \right)}}}} & (9) \end{matrix}$

[0057] where K is a static gain, T is a time constant, τ is the dead time, α=π/ωT, γ=τ/T

[0058] With the measured values Ω, y₀ and u₀ and known ƒ₀, b and c, parameters K, T and τ of the approximating transfer function are calculated as per the following algorithm:

[0059] (a) at first the static gain K is calculated as: $\begin{matrix} {{K = \frac{y_{0}}{u_{0}}};} & (10) \end{matrix}$

[0060] (b) then the following equation is solved for α: $\begin{matrix} {{\frac{y_{0}}{f_{0}} = \frac{1 - ^{- \alpha}}{\alpha}};} & (11) \end{matrix}$

[0061] (c) after that time constant T is calculated as: $\begin{matrix} {{T = \frac{\pi}{\alpha \quad \Omega}};} & (12) \end{matrix}$

[0062] (d) and finally dead time ris calculated as: $\begin{matrix} {\tau = {T\quad {\ln \left\lbrack {\frac{1}{2}\left( {^{\alpha} + 1} \right)} \right\rbrack}}} & (13) \end{matrix}$

[0063] The most time consuming part of the above algorithm is solving equation (11). This is a nonlinear algebraic equation and all known methods can be applied for its solution.

[0064] With the parameters K, T and τ of the approximating transfer function identified, PI controller can be easily designed. The following tuning algorithm/values are proposed. Proportional gain K_(p) and integrator gain K_(i) in PI control are calculated as follows. For desired overshoot being a constraint, proportional gain K_(p) and integrator gain K_(i) are sought as a solution of the parameter optimization (minimization) problem with settling time being an objective function. This allows to obtain a minimal settling time at the step response as well as appropriate stability margins at any law of set point change.

[0065] A simplified solution of this problem is proposed by this invention too. It is proposed that quasi-optimal settings are used instead of optimal settings. Those are obtained as a solution of the above formulated optimization problem and respective approximation. Gains K_(p) and K_(i) as functions of desired overshoot are approximated. At first normalized values of K_(p) and K_(i) denoted as K⁰ _(p) and K⁰ _(i) should be calculated as follows:

[0066] At first the normalized time constants are calculate as per the following formulas:

[0067] For desired overshoot 20% integrator time constant is calculated as

T ⁰ _(i)=1.60 τ/T;  (14)

[0068] for desired overshoot 10%:

T ⁰ _(i)=1.80 τ/T.  (15)

[0069] for desired overshoot 5%:

T ⁰ _(i)=1.95 τ/T.  (16)

[0070] After that normalized gains K⁰ _(i) are to be calculated as reciprocals of the respective time constants:

K ⁰ _(i)=1/T ⁰ _(i)

[0071] Normalized proportional gain K⁰ _(p) is to be taken from Table 2 with in-between values determined via interpolation. TABLE 2 Quasi-optimal settings of PI controller (proportional gain K⁰ _(p)) Overshoot τ/T = τ/T = τ/ =T τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = [%] 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.5 20 K⁰ _(p =) 3.702 2.564 2.007 1.683 1.473 1.329 1.225 1.146 1.086 0.915 7.177 10 K⁰ _(p =) 3.058 2.120 1.673 1.419 1.258 1.148 1.068 1.008 0.963 0.833 5.957  5 K⁰ _(p =) 2.624 1.823 1.483 1.294 1.170 1.082 1.014 0.964 0.924 0.808 5.203

[0072] Finally, K_(p) and K_(i) are calculated as K_(p)=K⁰ _(p)/K and K_(i)=K⁰ _(i)/T/K where K is the static gain of the process determined by (10), T is the time constant determined by (12). Formulas (14)-(16) and Table 2 give quasi-optimal normalized values of PI controller settings for a desired overshoot.

[0073] In some cases an external unknown constant or slowly changing disturbance (static load) is applied to the process. In that case the static gain of the process is calculated on the basis of two asymmetric relay feedback tests—each with different average over the period control signal—as a quotient of the increment of average over the period process output signal and increment of average over the period control signal.

[0074] Sometimes the process has a nonlinear character. In this case multiple asymmetric relay feedback tests are to be performed with decreasing values of the output amplitude of the relay—with the purpose to obtain a better local approximation of the process. Parameters of the process transfer function corresponding to a local linear approximation of the process are found as a solution of equations (7), (10) where the process model is expressed as a formula of the LPRS and contains the parameters to be identified.

[0075] More complex models of the process can also be used. If the process model has more than 3 unknown parameters, multiple asymmetric relay feedback tests are performed with different values of hysteresis b_(k) (k=1, 2 . . . ) of the relay—with the purpose to identify several points of the LPRS: $\begin{matrix} {{{Re}\quad {J\left( \Omega_{k} \right)}} = {{{- \frac{1}{2}}f_{0}} - \frac{y_{0k}}{u_{0k}}}} & (17) \\ {{{Im}\quad {J\left( \Omega_{k} \right)}} = {{- \pi}\quad {b_{k}/\left( {4\quad c} \right)}}} & (18) \end{matrix}$

[0076] where Ω_(k), y_(0k,), u_(0k) are Ω y_(0,), u₀ corresponding to k-th asymmetric relay feedback test.

[0077] Each experiment allows for identification of one point of the LPRS and consequently of two parameters (beside the static gain). As a result, 2N+1 unknown parameters can be identified from N asymmetric relay feedback tests via solution of 2N+1 nonlinear algebraic equations (10), (17), (18) with the unknown parameters expressed through a formula of the LPRS. Therefore, the number of asymmetric relay feedback tests can be planned accordingly, depending on the number of unknown parameters.

[0078] Alternatively, parameters of process transfer function are to be found as least squares criterion (or with the use of another criterion) approximation of the LPRS—if the number of unknown parameters of the process is less than 2N+1 (where N is the number of asymmetric relay feedback tests). In other words, the LPRS represented via certain process model parameters is fitted to the LPRS points obtained through the asymmetric relay feedback tests.

[0079] Eventually, the designed self-tuning PID (or another type) controller is supposed to be realized as a processor based (micro-computer or controller) device and all above formulas, the nonlinear element, the tuning rules are realized as computer programs with the use of applicable programming languages. The preferred embodiment of the controller is depicted in FIG. 5. The controller 1 has two A/D converters 2 and 3 on its input for the process output and set point signals respectively (alternatively it may have only one A/D converter for the process output signal, and the set point may be realized within the controller software), a processor (CPU) 4, a read-only memory (ROM) 5 for program storage, a random access memory (RAM) 6 for buffering the data, an address/data/control bus 7 for data transfer to/from the processor, and an D/A converter 8 that converts digital control signal generated by the controller into analog format. The analog control signal is applied to the process 9 (to a control valve, etc.). All elements of the controller interact with each other in a known manner. Some elements of the controller listed above (for example A/D and D/A converters) may be missing as well as the controller may also contain elements other than listed above—depending on specific requirements and features of the control system.

EXAMPLE

[0080] The following example illustrates an application of the method as well as is realized with the software, which actually implements the described algorithm and formulas.

[0081] Let the process be described by the following transfer function, which is considered unknown to the autotuner and is different from the process model used by the autotuner: W(s) = 0.5exp (−0.6s)/(0.8s² + 2.4s + 1)

[0082] The objective is to design a PI controller for this process with the use of first order plus dead time transfer function as an approximation of the process dynamics.

[0083] Simulations of the asymmetric relay feedback test and of the tuned system are done with the use of software SIMULINK® (of MathWorks). The block diagram is depicted in FIG. 6. Blocks Transport Delay 1 and Transfer Fcn 2 realize process model. The control is switched from the relay control (blocks Sign 3 and Gain 4) for the asymmetric relay feedback test to PI control (blocks Gain1 5, Integrator 6, Gain2 7, Sum1 8) by the Switch 9 depending on the value of block Constant 10 (1 for the relay control and −1 for the PI control). Error signal and control signal are saved as data files named Error (block To Workspace 11) and Control (block To Workspace1 12) respectively. They are processed for calculation of the average output value, average control value and the frequency of oscillations. Process output and control signal can be monitored on Scope 13 and Scope1 14 respectively. Set point is realized as an input step function (block Step 15). Error signal is realized as difference between the set point signal and process output by block Sum 16.

[0084] Let us use first order plus dead time transfer function for the identification:

W _(p)(s)=K exp(−τs)/(T s+1)

[0085] Let us choose set point value (final value of the step function) ƒ₀=0.1, amplitude of the relay c=1 and hysteresis b=0 and run the asymmetric relay feedback test. The following values of the oscillatory process are measured:

[0086] Frequency of oscillations Ω=1.903,

[0087] Average value of the process output y₀=0.0734,

[0088] Average value of the control signal u₀=0.1455.

[0089] The following three equations should be solved for K, T. and τ: ${{{Re}\quad {J\left( {\Omega,K,T,\tau} \right)}} = {{{- \frac{1}{2}}f_{0}} - \frac{y_{0}}{u_{0}}}},$

Im J(Ω, K, T, τ)=−πb/(4c).

K=y ₀ /u ₀

[0090] where the formula of J(ω) is given by (9).

[0091] According to the algorithm described above, the following values of the process parameters are obtained from the above three equations:

K=0.5050, T=2.5285, τ=0.9573.

[0092] Calculate the settings of the PI controller for the desired overshoot 10% and the above values of the identified parameters. As per formula (15) and Table 2 (with the use of linear interpolation), K_(i)=1.349 and K_(p)=3.503. Simulation of the system with the designed PI controller produces a step response with overshoot of about 12.5% and settling time about 2.05s (at level ±12.5%). Error between the desired overshoot (10%) and the actual overshoot (12.5%) is mainly due to the use of an approximate model of the process but is also due to the use of the quasi-optimal values of the PI controller settings instead of the optimal values. 

I claim:
 1. A method of tuning a controller for a process in a feedback control system comprising the steps of: (a) bringing the system into asymmetric self-excited oscillations (further referred to as asymmetric relay feedback test) via the introduction into the system an element having a nonlinear characteristic in series with the process, and applying a constant set point signal ƒ₀ to the system, so that the error signal is the difference between the set point and the process output signal, the error signal is an input of the nonlinear element, and the output of the nonlinear element is a control signal for the process; (b) measurement of the frequency of the oscillations Ω, average (over the period of the oscillations) value of the process output signal y₀, and average (over the period of the oscillations) control signal u₀; (c) choosing the process model, parameters of which have unknown values; (d) identification of the parameters of the process model with the measurements obtained; (e) tuning the controller in dependence on the identified parameters of the process model.
 2. The method as recited in claim 1, wherein the nonlinear element is the hysteresis relay characteristic with positive, zero or negative hysteresis;
 3. The method as recited in claim 1, wherein the original process model with unknown parameters is transformed into the form of a formula of the locus of a perturbed relay system (LPRS) being a complex function, which has same unknown parameters;
 4. The method as recited in claim 1, wherein with the measurement obtained, the process model parameters identification step further includes the steps of: (a) calculation of the static gain of the process as: K=y ₀ /u ₀ (b) and calculation of one point of the LPRS J(Ω) of the process at the frequency of the oscillations Ω (which is the measured value of the LPRS at the frequency Ω) as: ${{Re}\quad {J(\Omega)}} = {{{- \frac{1}{2}}f_{0}} - \frac{y_{0}}{u_{0}}}$

Im J(Ω)=πb/(4c) where ƒ₀ if the set point, y₀ is the average value of the process output signal, u₀ is the average value of the control signal, b is a half of the hysteresis of the relay, c is the amplitude of the relay.
 5. The method as recited in claim 1, wherein two unknown process model parameters (beside the static gain) are identified as the values that provide equality of the LPRS calculated on the basis of the chosen process model (at the frequency of the oscillations) to the point of the LPRS calculated through the measurements obtained via the asymmetric relay feedback test.
 6. The method as recited in claim 1, wherein multiple asymmetric relay feedback tests are performed with different values of the hysteresis of the relay—with the purpose to measure several points of the LPRS.
 7. The method as recited in claim 1, wherein in case of nonlinear character of the process, multiple asymmetric relayfeedback tests are performed with decreasing values of the output amplitude of the relay—with the purpose to obtain a better local model of the process.
 8. The method as recited in claim 1, wherein a combination of multiple asymmetric relay feedback tests with different values of the hysteresis of the relay and decreasing values of the output amplitude of the relay are performed - with the purpose to measure several points of the LPRS and obtain a better local model of the process in case of its nonlinear character.
 9. The method as recited in claim 6 or 8, wherein with the measurement obtained, the process model parameters identification step further includes the steps of: (a) calculation of the static gain of the process as: ${K = {\frac{1}{N}\quad {\sum\limits_{k = 1}^{N}\frac{y_{0k}}{u_{0k}}}}};$

(b) and calculation of Npoints of the LPRS J(Ω_(k)) of the process at the frequencies of the oscillations Ω_(k), k=1, 2, . . . ,N (which are the measured values of the LPRS at frequencies Ω_(k), k=1, 2, . . . , N) as: ${{Re}\quad {J\left( \Omega_{k} \right)}} = {{- \frac{1}{2}}\quad \frac{f_{0} - y_{0k}}{u_{0k}}}$

Im J(Ω_(k))=πb _(k)/(4c) where Ω_(k), y_(0k), u_(0k), b_(k) (=1, 2 . . . , N) are values of Ω, y₀, u₀, and b for k-th asymmetric relay feedback test, ƒ₀ if the set point, y₀ is the average value of the process output signal, u₀ is the average value of the control signal, b is a half of the hysteresis of the relay, c is the amplitude of the relay.
 10. The method as recited in claim 6 or 8, wherein 2N unknown parameters (beside the static gain) of the process model are found as the solution of 2N nonlinear algebraic equations, which are obtained as conditions of equality of the N measured (via the asymmetric relay feedback tests) points of the LPRS the process to the N points of the LPRS calculated on the basis of the chosen process model (at the frequencies of the oscillations).
 11. The method as recited in claim 6 or 8, wherein the unknown parameters (beside the static gain) of the process model are found through the least squares criterion (or with the use of another criterion) fitting of the LPRS expressed via certain process model parameters to the LPRS points obtained through the asymmetric relay feedback tests.
 12. The method as recited in claim 3, wherein the LPRS for a process model in the form of transfer function W_(p)(s) of the process is calculated with the use of the following formula: ${J(\omega)} = {{\sum\limits_{k = 1}^{M_{1}}\quad {{k^{m}\left( {- 1} \right)}^{k + 1}{Re}\quad {W_{p}\left( {k\quad \omega} \right)}}} + {j{\sum\limits_{k = 1}^{M_{2}}\quad {{Im}\quad {{W_{p}\left\lbrack {\left( {{2k} - 1} \right)\omega} \right\rbrack}/\left( {{2k} - 1} \right)}}}}}$

where m=0 for type 0 servo systems (non-integrating process) and m=1 for type 1 servo systems (integrating process), ω is a frequency, M₁, M₂ are numbers sufficiently large for the above formula being an adequate approximation of respective infinite series.
 13. The method as recited in claim 3, wherein the LPRS for at process model in the form of transfer function W_(p)(s) of the process is calculated on the basis of expansion of the process transfer function W_(p)(s) into partial fractions, calculation of the partial LPRSs with the use of formulas of the following Table and summation of the partial LPRSs. Formulas of LPRS J(ω) Transfer function W(s) LPRS J(ω) K/s 0 − jπ²K/(8ω) K/(Ts + 1) 0.5K(1 − α cosech α) − j0.25 πK th(α/2), α = π/(Tω) K/[( T₁s + 1)( T₂s + 1)] 0.5K[1 − T₁/(T₁ − T₂) α₁ cosech α₁ − T₂/(T₂ − T₁) α₂ cosech α₂)] − j0.25 πK/(T₁ − T₂) [T₁ th(α₁/2) − T₂ th(α₂/2)], α₁ = π/(T₁ω), α₂ = π/(T₂ω) K/(s² + 2 ξs + 1) 0.5 K[(1 − (B + γC)/(sin²β + sh²α)] − j0.25 πK(shα − γsinβ)/(chα + cosβ) α = πξ/ω, β = π(1 − ξ²)^(1/2)/ω, γ = α/β, β = αcosβshα + βsinβchaα C = αsinβchα − βcosβshα K s/(s² + 2ξs + 1) 0.5 K [ξ (β + γC) − π/ω cosβshα]/(sin² β + sh²α)] − j0.25 K π(1 − ξ²)^(−1/2) sinβ/(chα + cosβ) α = πξ/ω, β = π(1 − ξ²)^(1/2)/ω, γ = α/β, β = αcosβshα + βsinβchα, C = αsinβchα − βcosβshα, K s/(s + 1)² 0.5 K[α( − shα + α ch α)/sh²α − j0.25 πα/(1 + chα)], α = π/ω K s/[(T₁s + 1) (T₂s + 1)] 0.5 K/(T₂ − T₁) [ α₂ cosech α₂ − α₁ cosech α₁] − j0.25 K π/(T₂ − T₁) [th(α₁/2) − th(α₂/2)] , α₁ = π/(T₁ω), α₂ = π/(T₂ω)


14. The method as recited in claim 4, wherein the LPRS for a process model in the form of state space description for type 0 (non-integrating process) servo systems is calculated with the use of the following formula: $\begin{matrix} {{J(\omega)} = {{{- 0.5}{C\left\lbrack {A^{- 1} + {\frac{2\quad \pi}{\omega}\left( {I - ^{\frac{2\quad \pi}{\omega}A}} \right)^{- 1}\quad ^{\frac{\pi}{\omega}A}}} \right\rbrack}B} +}} \\ {{j\quad \frac{\pi}{4}{C\left( {I + ^{\frac{\pi}{\omega}A}} \right)}^{- 1}\left( {I - ^{\frac{\pi}{\omega}A}} \right)A^{- 1}B}} \end{matrix}$

where A, B and C are matrices of the following state space description of a relay system: {dot over (x)}=Ax+Bu y=Cx $u = \left\{ \begin{matrix} {+ 1} & {{{{if}\quad \sigma} = {{f_{0} - y} > b}},{\overset{.}{\sigma} > 0}} \\ {- 1} & {{{{if}\quad \sigma} = {{f_{0} - y} < {- b}}},{\overset{.}{\sigma} < 0}} \end{matrix} \right.$

where A is an n×n matrix, B is an n×1 matrix, C is an 1×n matrix, ƒ₀ is the set point, σ is the error signal, 2b is the hysteresis of the relay function, x is the state vector, y is the process output, u is the control, n is the order of the system; or the LPRS for type 1 (integrating process) servo systems is calculated with the use of the following formula: $\begin{matrix} {{J(\omega)} = {0.25{CA}^{- 2}\left\{ {{\left( {I - D^{2}} \right)^{- 1}\left\lbrack {D^{2} - {\left( {I + {\frac{4\quad \pi}{\omega}A}} \right)D} + D^{3} - I} \right\rbrack} +} \right.}} \\ {{\left. {D - I} \right\} B} + {j\quad \frac{\pi}{8}{CA}^{- 1}\left\{ {\frac{\pi}{\omega} + {A^{- 1}\left\lbrack {\left( {I - D^{2}} \right)^{- 1} \cdot \left( {{3D^{2}} - {3D} -} \right.} \right.}} \right.}} \\ {{\left. \left. {{\left. {D^{3} + I} \right)} - D + I} \right\rbrack \right\} B},} \end{matrix}$

where D=e^(π/ωA), A, B and C are matrices of the following state space description of a relay system: {dot over (x)}=Ax+Bu {dot over (y)}=Cx−ƒ ₀ $u = \left\{ \begin{matrix} {+ 1} & {{{{if}\quad \sigma} = {{- y} > b}},{\overset{.}{\sigma} > 0}} \\ {- 1} & {{{{if}\quad \sigma} = {{- y} < {- b}}},{\overset{.}{\sigma} < 0}} \end{matrix} \right.$

where A is an (n−1)×(n−1) matrix, B is an (n−1)×1 matrix, C is an 1×(n−1) matrix, n is the order of the system.
 15. The method as recited in claim 1, wherein the chosen model of the process is given by the transfer function W_(p)(s) of 1^(st) order with a dead time: W _(p)(s)=K exp(−τs)/(Ts+1) where K is a static gain, T is a time constant, τ is a dead time.
 16. The method as recited in claim 15, wherein the corresponding LPRS of the process is given by: ${J(\omega)} = {{\frac{K}{2}\left( {1 - {\alpha \quad ^{\gamma}\quad {cosech}\quad \alpha}} \right)} + {j\quad \frac{\pi}{4}K\quad \left( {\frac{2\quad ^{- \alpha}^{\gamma}}{1 + ^{- \alpha}} - 1} \right)}}$

where α=π/ωT, γ=τ/T.
 17. The method as recited in claim 15, wherein with the measurements of the frequency of the oscillations Ω, average output signal y₀ and average control signal u₀ obtained, calculation of the parameters K, T and τ of the process transfer function comprises the following steps: (a) calculating the static gain K as: ${K = \frac{y_{0}}{u_{0}}};$

(b) solving the following equation for α: ${\frac{y_{0}}{f_{0}} = \frac{1 - ^{- \alpha}}{\alpha}};$

(c) calculating the time constant T as: ${T = \frac{\pi}{\alpha \quad \Omega}};$

(d) calculating the dead time τ as: $\tau = {T\quad {\ln \left\lbrack {\frac{1}{2}\left( {e^{\alpha} + 1} \right)} \right\rbrack}}$


18. The method as recited in claim 15, wherein the proportional gain K_(p) and the integrator gain K_(i) in PI control are calculated as follows. For desired overshoot being a constraint, proportional gain K_(p) and integrator gain K_(i) are sought as a solution of the parameter optimization (minimization) problem with settling time being an objective function.
 19. The method as recited in claim 15, wherein for the desired overshoot being a given value, the calculation of the proportional gain K_(p) and the integrator gain K_(i) comprises the following steps: (a) calculation of the normalized values of K_(p) and K_(i) (denoted as K⁰ _(p) and K⁰ _(i)) as follows: For desired overshoot 20%, normalized integrator gain K⁰ _(i) is calculated as: K ⁰ _(i)=1.60 τ/T; for desired overshoot 10%, K ⁰ _(i)=1.80 τ/T; for desired overshoot 5%, K ⁰ _(i)=1.95 τ/T with intermediate values determined with the use of interpolation. Normalized proportional gain K⁰ _(p) is taken from the following Table with intermediate values determined with the use of interpolation. Normalized proportional gain settings Overshoot τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = τ/T = [%] 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.5 20 K⁰ _(p =) 3.702 2.564 2.007 1.683 1.473 1.329 1.225 1.146 1.086 0.915 7.177 10 K⁰ _(p =) 3.058 2.120 1.673 1.419 1.258 1.148 1.068 1.008 0.963 0.833 5.957  5 K⁰ _(p =) 2.624 1.823 1.483 1.294 1.170 1.082 1.014 0.964 0.924 0.808 5.203

(b) Proportional gain K_(p) and integrator gain K_(i) are calculated as K_(p)=K⁰ _(p)/K and K_(i)=K⁰ _(i)/K where K is the static gain of the process.
 20. The method as recited in claim 4 or 9, wherein if an external unknown constant or slowly changing disturbance (static load) is applied to the process, each static gain of the process is calculated on the basis of a pair of asymmetric relay feedback tests—each with different average control signal value—as a quotient of the increment of the average process output signal and increment of the average control signal.
 21. The controller using the method recited in claim 1, wherein the controller is realized as a processor based device and all above formulas, the nonlinear element, and the tuning rules are realized as computer programs with the use of applicable programming languages. 